package com.ruoyi.mdm.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.poi.ss.usermodel.HorizontalAlignment;

/**
 * sku主档对象 sku_master
 *
 * @author shiseido
 * @date 2025-03-01
 */
@Data
public class SkuMaster extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 所属品牌代码
     */
    @Excel(name = "品牌", sort = 1, dictType = "goods_brand", width = 10)
    private String ownerId;

    /**
     * 商品编号
     */
    @Excel(name = "产品编码", sort = 2, width = 15)
    private String goodsCode;

    /**
     * 商品名称(中文)
     */
    @Excel(name = "产品中文名称", sort = 3, width = 30, align = HorizontalAlignment.LEFT)
    private String goodsName;

    /**
     * 商品名称(英文)
     */
    @Excel(name = "产品英文名称", sort = 4, width = 30, align = HorizontalAlignment.LEFT)
    private String goodsNameEn;

    /**
     * 产品中文简称
     */
    @Excel(name = "产品简称", sort = 5, width = 30, align = HorizontalAlignment.LEFT)
    private String goodsShortName;

    /**
     * 商品条码1
     */
    private String barCode;

    /**
     * sap商品编号
     */
    private String sapProductCd;

    /**
     * 品牌
     */
    private String brandId;

    /**
     * line
     */
    private String lineId;

    /**
     * subline
     */
    private String subLineId;

    /**
     * 大分类
     */
    private String deptId;

    /**
     * 中分类
     */
    private String classId;

    /**
     * 小分类
     */
    private String subClassId;

    /**
     * 净含量
     */
    private Long netWeight;

    /**
     * 净含量单位
     */
    private String netWeightUnit;

    /**
     * 销售单价
     */
    @Excel(name = "销售单价", sort = 6, cellType = Excel.ColumnType.NUMERIC, scale = 2)
    private BigDecimal salePrice;

    /**
     * 销售开始日
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "销售开始日", sort = 7, width = 10, dateFormat = "yyyy-MM-dd")
    private Date saleBeginDate;

    /**
     * 销售终止日
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date saleEndDate;

    /**
     * 商品区分(01：完成品 02：非完成品);01：完成品 02：非完成品
     */
    private String goodsType;

    /**
     * 商品子区分(1:完成品；2:中小样;3:贩促品;4:答谢品;5:试用品;6服务类 );1:完成品；2:中小样;3:贩促品;4:答谢品;5:试用品;6服务类
     */
    private String goodsSubType;

    /**
     * 更新日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateDate;

    /**
     * 传输日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date transferDate;

    /**
     * 数据状态
     */
    private String dataStatus;

    /**
     * 新商品分类编号
     */
    private String newCategoryId;

    /**
     * 现地美容法1代码
     */
    private String localbeamtdcd1;

    /**
     * 现地美容法1英文
     */
    private String localbeamtdennm1;

    /**
     * 现地美容法1中文
     */
    private String localbeamtdchinm1;

    /**
     * 现地美容法2代码
     */
    private String localbeamtdcd2;

    /**
     * 现地美容法2英文
     */
    private String localbeamtdennm2;

    /**
     * 现地美容法2中文
     */
    private String localbeamtdchinm2;

    /**
     * 现地美容法3代码
     */
    private String localbeamtdcd3;

    /**
     * 现地美容法3英文
     */
    private String localbeamtdennm3;

    /**
     * 现地美容法3中文
     */
    private String localbeamtdchinm3;

    /**
     * 新美容法3
     */
    private String producthierarchylv456;

    /**
     * 产品号组
     */
    private String prodNumCd;

    /**
     * 产品英文名称
     */
    private String prodNumEngnm;

    /**
     * 产品中文名称
     */
    private String prodNumChinm;

    /**
     * 现地产品线
     */
    private String brandCd;

    /**
     * 现地品牌名称
     */
    private String brandNm;

    /**
     * 产品线code
     */
    private String brandengnm;

    /**
     * 产品线code明细
     */
    private String brandengnmDetail;

    /**
     * etl时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date etlInsertTime;

    /**
     * 产品spu编码
     */
    private String spuCd;

    /**
     * 产品spu
     */
    private String spu;

    /**
     * 业务日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date bizDate;

    /**
     * 同步日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date snycDate;

    /**
     * 销售渠道
     */
    @Excel(name = "销售渠道", sort = 8)
    private String skuSalesChannel;

    /**
     * 是否推荐(y：是，n：否)
     */
    @Excel(name = "是否推荐", sort = 9, readConverterExp = "Y=是,N=否")
    private String skuRecommendFlag;

    /**
     * 类型
     */
    private String saletype1;

    /**
     * skum id
     */
    private Long skumId;

    /**
     * skum编码
     */
    private String skumCode;

    /**
     * skum名称
     */
    @Excel(name = "SKUM中文名称", sort = 10, align = HorizontalAlignment.LEFT)
    private String skumName;

    /**
     * skum名称
     */
    @Excel(name = "SKU英文名称", sort = 11, align = HorizontalAlignment.LEFT)
    private String skumNameEn;

    /**
     * skum名称
     */
    @Excel(name = "SKUM简称", sort = 12, align = HorizontalAlignment.LEFT)
    private String skumShortName;

    /**
     * 净含量
     */
    private String skumNetWeight;

    /**
     * 净含量单位
     */
    private String skumNetWeightUnit;

    /**
     * 销售价格
     */
    private BigDecimal skumSalePrice;

    /**
     * skum图片1
     */
    private String skumImageOne;

    /**
     * skum图片2
     */
    private String skumImageTwo;

    /**
     * skum图片3
     */
    private String skumImageThree;

    /**
     * skum图片4
     */
    private String skumImageFour;

    /**
     * skum图片5
     */
    private String skumImageFive;

    /**
     * spu id
     */
    private Long spuId;

    /**
     * spu编码
     */
    private String spuCode;

    /**
     * spu中文名称
     */
    @Excel(name = "SPU中文名称", sort = 13, align = HorizontalAlignment.LEFT)
    private String spuName;

    /**
     * spu英文名称
     */
    @Excel(name = "SPU英文名称", sort = 14, align = HorizontalAlignment.LEFT)
    private String spuNameEn;

    /**
     * spu简称
     */
    @Excel(name = "SPU简称", sort = 15, align = HorizontalAlignment.LEFT)
    private String spuShortName;

    /**
     * spu昵称
     */
    @Excel(name = "昵称", sort = 16, align = HorizontalAlignment.LEFT)
    private String spuNickName;

    /**
     * sku容量
     */
    @Excel(name = "容量", sort = 17, align = HorizontalAlignment.LEFT)
    private String content;

    /**
     * 容量单位
     */
    @Excel(name = "容量单位", sort = 18, align = HorizontalAlignment.LEFT)
    private String contentUnit;

    /**
     * sku系统默认容量
     */
    @Excel(name = "默认容量", sort = 19, align = HorizontalAlignment.LEFT)
    private String netcontent;

    /**
     * spu图片1
     */
    private String spuImageOne;

    /**
     * spu图片2
     */
    private String spuImageTwo;

    /**
     * spu图片3
     */
    private String spuImageThree;

    /**
     * spu图片4
     */
    private String spuImageFour;

    /**
     * spu图片5
     */
    private String spuImageFive;

    /**
     * 服务渠道
     */
    private String channelCode;

    /**
     * 评分
     */
    private BigDecimal totalScore;

    private String saletype;

}
